<?php
namespace app\index\controller;


use app\common\model\Ip;
use app\common\model\Excel;
use PHPExcel_IOFactory;
use PHPExcel;
use think\Db;
use think\facade\Log;
class Ips  
{
//     public function getaddress($value)
//     {
//         $ipdata = Db::name('excel')->where('id',$value)->field('id,SOURCE_IP')->select();
//         // dump($ipdata);
//         $data = [];
//         $data['data']['ip'] =  $ipdata[0]['SOURCE_IP'];

//         $data_string = json_encode($data);
//         $ch = curl_init('http://10.21.64.225:18080/ipAddress/ipAnalysis/findLocationByIp.json');
//         curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
//         curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
//         curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//         curl_setopt($ch, CURLOPT_HTTPHEADER, array(
//                         'Content-Type: application/json',
//                         'Content-Length: ' . strlen($data_string))
//         );
//         $result = json_decode(curl_exec($ch), true);
//         // dump($result );
//         $insertdata['countrys'] = $result['data']['countryName'];
//         $insertdata['city'] = $result['data']['cityName'];
//         dump($insertdata);
//         $update =  Db::name('excel')
//                 ->where('id', $value)
//                 ->data($insertdata)
//                 ->update();
//                 dump($update);
//         if (!$update) {
//              $redis=new \Redis();
//             $redis->connect('127.0.0.1','6379');

//             $redis->rpush('newip',$value);

//         }
//     }

//     public function test()
//     {
//                       $data = [];
//                 $data['data']['ip'] =   '125.119.87.48';
        
//                 $data_string = json_encode($data);
//                  // dump($data_string);
//                 $ch = curl_init('http://10.21.64.225:18080/ipAddress/ipAnalysis/findLocationByIp.json');
//                 curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
//                 curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
//                 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//                 curl_setopt($ch, CURLOPT_HTTPHEADER, array(
//                                 'Content-Type: application/json',
//                                 'Content-Length: ' . strlen($data_string))
//                 );
//                 $result = json_decode(curl_exec($ch), true);
//                  dump($result['data']['countryName']);
//     }

//     public function tttt()
//     {
//         $ipdata = Db::name('excel')->field('id,SOURCE_IP,countrys,city')->limit(0,2)->select();
//         // dump($ipdata);
//         foreach ($ipdata as $key => $value) {
//               $data = [];
//                 $data['data']['ip'] =  $value['SOURCE_IP'];
        
//                 $data_string = json_encode($data);
//                  // dump($data_string);
//                 $ch = curl_init('http://10.21.64.225:18080/ipAddress/ipAnalysis/findLocationByIp.json');
//                 curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
//                 curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
//                 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//                 curl_setopt($ch, CURLOPT_HTTPHEADER, array(
//                                 'Content-Type: application/json',
//                                 'Content-Length: ' . strlen($data_string))
//                 );
//                 $result = json_decode(curl_exec($ch), true);
//                  dump($result['data']['countryName']);
//                   dump($value['countrys']);
//                 if ($result['data']['countryName'] !== $value['countrys']) {
//                      dump($value['id']);
//                 }
//         }
 
       
       
//     }

//     public function ippull()
//     {
//         $redis=new \Redis();
//         $redis->connect('127.0.0.1','6379');

//         for ($i=0; $i < 25; $i++) { 
//            $value=$redis->lpop('newip');
//            // $value = '10';
//             if($value){
//             $this->getaddress($value);
//              echo '出队的值'.$value;
                
//             }else{
//              echo "出队完成";
//          };
// // }
//         }
 
            
//     }
  
//   public function excel()
//   {
//         set_time_limit(0);
//     	$ip_model = new Ip();
//     	$excel_model = new Excel();
//     	$data = $excel_model->field('id,SOURCE_IP')->limit(0,999)->select()->toarray();
//     	foreach ($data as $key => $value) {
//     		    $new = explode('.', $value['SOURCE_IP']);
//             	// dump($new);
//             	$value['short_net'] = $new[0].'.'.$new[1].'.'.$new[2];

//                 $where[] = ['network', 'like', $value['short_net'].'%'];
//                 $res = $ip_model->where($where)->find();
//                 dump($res);
//     	}
//   }


  // public function ipPre()
  // {
  //       $redis=new \Redis();
  //   $redis->connect('127.0.0.1','6379');
  //   $redis->rpush('newip',31);
    //                 set_time_limit(90); 
    //     ini_set("memory_limit", "1024M"); 
    // $where = [];
    // $where[] = ['countrys','eq','NULL'];
    // $where[] = ['SOURCE_IP','neq','NULL'];
    // $res = Db::name('excel')->where($where)->field('id,countrys,SOURCE_IP')->select();
    // dump(count($res) );
    // $redis=new \Redis();
    // $redis->connect('127.0.0.1','6379');
 
     
    // foreach($res as $k=>$v){
    //     // dump($name);
    //  $redis->rpush('newip',$v['id']);
    
    // }
    //   dump($data);
  // }

//   public function change()
//     {
//         set_time_limit(0);
//         $ip_model = new Ip();


//         // dump($res);
//         $redis=new \Redis();
//         $redis->connect('127.0.0.1',6379);
         
//         //list类型出队操作
//         $value=$redis->lpop('allip');
//         if($value){
//             $begin = $value*100;
//             $end  = $begin + 99;
//             $data = $ip_model->field('id,network')->limit($begin,$end)->select()->toarray();
//             foreach ($data as $key => &$value){
//                 $new = explode('.', $value['network']);
//                 // dump($new);
//                 $value['short_net'] = $new[0].'.'.$new[1].'.'.$new[2];
//             }
//             $res = $ip_model->saveAll($data);
//             dump($value);
//             dump($res);
//         }else{
//             echo "出队完成";
//         }
//     }


// public function log()
// {
 
// 	Log::info('日志信息');

//  trace('错误信息','error');
// }

// public function pre($arr,$name)
// {
// 	$redis=new \Redis();
//     $redis->connect('127.0.0.1','6379');
 
     
//     foreach($arr as $k=>$v){
//         // dump($name);
//      $redis->rpush($name,$v);
    
//     }
// }

// public function pull()
// {
//  $redis=new \Redis();
//  $redis->connect('127.0.0.1',6379);
 
// //list类型出队操作
// $value=$redis->lpop('ipsc');
// if($value){
//  echo '出队的值'.$value;

// }else{
//  echo "出队完成";
// }
// }




// // iPinfo
//     public function test()
//     {
//         set_time_limit(90); 
//         ini_set("memory_limit", "1024M"); 
//         require'../extend/PHPExcel/PHPExcel.php'; 
//         header("content-type:text/html;charset=utf-8");
//         //上传excel文件
//         $file_excel = WEB_PATH.'/static/ex/read.xlsx';
//            $objPHPExcelReader = PHPExcel_IOFactory::load($file_excel);  //加载excel文件

//         foreach($objPHPExcelReader->getWorksheetIterator() as $sheet)  //循环读取sheet
//         {
//             foreach($sheet->getRowIterator() as $row)  //逐行处理
//             {
//                 if($row->getRowIndex()<2)  //确定从哪一行开始读取
//                 {
//                     continue;
//                 }
//                 foreach($row->getCellIterator() as $cell)  //逐列读取
//                 {
//                     $data = $cell->getValue(); //获取cell中数据
//                     echo $data;
//                 }
//                 echo '<br/>';
//             }
//     // }
// }
//     }

//     // public function change()
//     // {
//     // 	set_time_limit(0);
//     // 	$ip_model = new Ip();
    	
//     // 	for ($i=400; $i <85000 ; $i++) {
//     // 		$begin = $i*100;
//     // 		$end  = $begin + 99;
//     // 		$data = $ip_model->field('id,network')->limit($begin,$end)->select()->toarray();
//     // 		foreach ($data as $key => &$value){
//     //         	$new = explode('.', $value['network']);
//     //         	// dump($new);
//     //         	$value['short_net'] = $new[0].'.'.$new[1].'.'.$new[2];
//     //      	}
//     //      	$res = $ip_model->saveAll($data);
//     //      	// dump($res);
 			
//     // 	}
//     // 	 // foreach ($data as $key => &$value) {
//     //   //       $new = explode('.', $value['network']);
//     //   //       // dump($new);
//     //   //       $value['short_net'] = $new[0].'.'.$new[1].'.'.$new[2];
//     //   //    }
//     // 	 // $res = $ip_model->insertAll($data);
//     // 	 // dump($res);
//     //      // $ip = Db::connect('ip-house')->table('ip')->field('id,network')->select();
//     //      // foreach ($ip as $key => &$value) {
//     //      //    $new = explode('.', $value['network']);
//     //      //    dump($new);
//     //      //    $value['short_net'] = $new[0].'.'.$new[1].'.'.$new[2];
//     //      // }
//     //      // dump($data);
//     // }

//     /**
//      * 本地导入数据专用
//      */
//     // public function buyerexcel()
//     // {
//     //     require'../extend/PHPExcel/PHPExcel.php'; 
//     //     header("content-type:text/html;charset=utf-8");
//     //     //上传excel文件
//     //     $file_excel = WEB_PATH.'/static/excel/*.xlsx';
//     //     $excel_list = glob($file_excel);
//     //     $detail_list = [];
//     //     $reader = \PHPExcel_IOFactory::createReader('Excel2007');
//     //     foreach ($excel_list as $key => $value) {
//     //         //载入excel文件
//     //         $excel = $reader->load("$value",$encode = 'utf-8');
//     //         //读取第一张表
//     //         $sheet = $excel->getSheet(0);
//     //         //获取总行数
//     //         $row_num = $sheet->getHighestRow();
//     //         //获取总列数
//     //         $col_num = $sheet->getHighestColumn();
//     //         $data = []; //数组形式获取表格数据
//     //         for ($i = 2; $i <= $row_num; $i ++) {
//     //             $data[$i]['country_id']  = $sheet->getCell("A".$i)->getValue();
//     //             $data[$i]['industry_id']  = $sheet->getCell("B".$i)->getValue();
//     //             $data[$i]['url']  = $sheet->getCell("D".$i)->getValue();
//     //             $data[$i]['name']  = $sheet->getCell("C".$i)->getValue();
//     //             $data[$i]['detail']  = $sheet->getCell("E".$i)->getValue();
//     //             if (is_object($data[$i]['name'])) {
//     //                 $data[$i]['name'] = $data[$i]['name']->__toString();
    
//     //             };
//     //             if (is_object($data[$i]['detail'])) {
//     //                 $data[$i]['detail'] = $data[$i]['detail']->__toString();
    
//     //             };
//     //             //将数据保存到数据库
//     //         }
           
//     //         $detail_list =array_merge($detail_list ,$data);
//     //     }
//     //     $cate_list = Db::name('property')->select();

//     //     foreach ($detail_list as $key => &$value) {
//     //         foreach ($cate_list as $k => $va) {
//     //              if ($value['country_id'] == $va['v']) {
//     //                   $value['country_id'] = $va['id'];
//     //                   // echo "string";
//     //              }
//     //             if ($value['industry_id'] == $va['v']) {
//     //                   $value['industry_id'] = $va['id'];
//     //              }
//     //         }
//     //     }
//     //     dump($detail_list);
//     //     // 需要插入数据的时候打开
//     //     // $res = Db::name('buyer')->insertAll($detail_list);
//     //     // dump($res);

//     // }
//     public function index( )
//     {
//     	$redis=new Redis();
// 		$redis->connect('127.0.0.1','6379');
// 		$password='fenglove';
// 		$redis->auth($password);
// 		$arr=array('h','e','l','l','o','w','o','r','l','d');
// 		foreach($arr as $k=>$v){
		
// 		 $redis->rpush('mylist',$v);
		
// 		}
//     }
}